/**
 * Created with IntelliJ IDEA.
 * Description:
 * User: lenovo
 * Date: 2022-04-22
 * Time: 12:29
 */
public class TestDmeo {
//    public static void main1(String[] args) {
//        System.out.println("\\\"hello\\\"");   // \"hello\"
//    }

//    public static void main2(String[] args) {
//        int a = 10;
//        int b = 20;
//        System.out.println(a+b);//30
//        System.out.println(a-b);//-10
//        System.out.println(a*b);//200
//        System.out.println(a/b);//0
//        System.out.println(a%b);//10


//    public static void main3(String[] args) {
//        System.out.println(5/2);// 整型/整型 == 整型 5/2 == 2
//        System.out.println(5.0/2);// 小数默认double型  double/int == double , int 提升为double型
//        System.out.println(5/2.0);//  小数默认double型  int/double == double , int 提升为double型
//        System.out.println((float)(5/2));// int/int == int 5/2 == 2 ,(float)强转为float型 -->2.0
//    }


//    public static void main4(String[] args) {
//        System.out.println(10%3);// 10/3 ==3......1
//        System.out.println(10%-3);// 10/-3 ==-3......1
//        System.out.println(-10%3);// -10/3 ==-3......-1
//        System.out.println(-10%-3);// -10/-3 ==3......-1
//        System.out.println(11.5%2);// 11.5/2 == 5......1.5

//    public static void main5(String[] args) {
//        System.out.println(5/0);
//    }

//    public static void main6(String[] args) {
//        int a = 4;
//        a += 1;
//        System.out.println(a);//a = a+1; 5
//        a -= 1;
//        System.out.println(a);//a = a-1; 4
//        a *= 5;
//        System.out.println(a);//a = a*5; 20
//        a /= 2;
//        System.out.println(a);//a = a/2; 20/2==10
//        a %= 2;
//        System.out.println(a);//a = a%2; 20%2 ==0
//    }

//    public static void main7(String[] args) {
//        int a = 1;
//        System.out.println(a++);//2
//        short s = 1;
//        //s = s+1;// 报错 s是short类型，1是int类型，在计算时会进行整型提升，因此计算完的结果是int型 无法放入short型的s里
//        s = (short)(s+1);//不报错 强转类型转换
//        s += 1;// 不报错 s += 1--》 s = s+1; 增量运算符自动帮我们进行了整型提升
//    }

//    public static void main8(String[] args) {
//        int a = 1;
//        ++a;// 2 ++前置 先++后使用
//        System.out.println(++a);//3
//        System.out.println(a);//3
//    }

//    public static void main9(String[] args) {
//        int a = 10;
//        int b = 20;
//        //注意： = 表示赋值，要与数学中含义区分
//        // Java/C 中 == 表示相等
//        System.out.println(a == b);//false
//        System.out.println(a != b);//true
//        System.out.println(a > b);//false
//        System.out.println(a < b);//true
//        System.out.println(a >= b);//false
//        System.out.println(a <= b);//true
//    }

//    public static void main10(String[] args) {
//        int a = 1;
//        int b = 2;
//        System.out.println((a>b)&&(19/0)==0);//false
//    }



    public static void main11(String[] args) {
//        System.out.println(true||true);//true
//        System.out.println(true||false);//true
//        System.out.println(false||true);//true
//        System.out.println(false||false);//false
//
//        int a = 1;
//        System.out.println(!(a==1));//false
        int a = 0xf;
        System.out.printf("%x\n",~a);//fffffff0
        System.out.println(~a);//-16
        //0xf ==> 正数补码： 00000000 00000000 00000000 00001111
        //~a ==> 取反后补码：11111111 11111111 11111111 11110000
        //         f  f     f   f    f   f    f   0
        // a取反后变成了负数：11111111 11111111 11111111 11110000
        //          补码-1：11111111 11111111 11111111 11101111
        //      取反得到原码：10000000 00000000 00000000 00010000
    }

    public static void main(String[] args) {
//        int a = -10;
//        //只看后8位 00001010
//        //a<<1    00010100 //20
//        System.out.println(a<<1);//-20
//        System.out.println(a<<2);//-40
//
//        int b = -11;
//        System.out.println(b>>1);//-6
//        System.out.println(b>>2);//-3
//        System.out.println(b>>3);//-2

//        int c = 1;
//        //     00000001
//        //>>>1 00000000--->0
//        System.out.println(c>>>1);//0

//        int a = 0;
//        System.out.println(a == 0);
//        float f = 0.0f;
//        System.out.println(f == 0);

//        //求两个整数的最大值
//        int a = 10;
//        int b = 20;
//        int max = a>b?a:b;
//        System.out.println(max);//20

//        boolean flg = false ? false : true == true ? true : false;
//        //             表达式1  表达式2     表达式3     表达式4
//        //             表达式1错误执行表达式3
//        //             表达式3正确 执行表达式4
//        System.out.println(flg);//true

//        System.out.println(true?1:2.0);//1.0  表达式2 int类型隐式提升为double类型

        int a = 10;
        int b = 20;
        a>b?a:b:

    }

    public static void main1(String[] args) {
        int a = 1;
        int b = 2;
        System.out.println((a==1)|(b==2));

    }
}
